.c15t-devtool-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 0.375rem;
	font-size: 0.875rem;
	font-weight: 500;
	transition-property: color, background-color, border-color;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
	gap: 0.5rem;
}

.c15t-devtool-button:focus-visible {
	outline: none;
}

.c15t-devtool-button:disabled {
	pointer-events: none;
	opacity: 0.5;
}

/* Variants */
.c15t-devtool-button-default {
	background-color: var(--c15t-dev-tools-primary);
	color: var(--c15t-dev-tools-primary-foreground);
}

.c15t-devtool-button-default:hover {
	background-color: color-mix(
		in srgb,
		var(--c15t-dev-tools- primary) 90%,
		transparent
	);
}

.c15t-devtool-button-destructive {
	background-color: var(--c15t-dev-tools-destructive);
	color: var(--c15t-dev-tools-destructive-foreground);
}

.c15t-devtool-button-destructive:hover {
	background-color: color-mix(
		in srgb,
		var(--c15t-dev-tools- destructive) 90%,
		transparent
	);
}

.c15t-devtool-button-outline {
	border: 1px solid var(--c15t-dev-tools-input);
	background-color: var(--c15t-dev-tools-background);
}

.c15t-devtool-button-outline:hover {
	background-color: var(--c15t-dev-tools-accent);
	color: var(--c15t-dev-tools-accent-foreground);
}

.c15t-devtool-button-secondary {
	background-color: var(--c15t-dev-tools-secondary);
	color: var(--c15t-dev-tools-secondary-foreground);
}

.c15t-devtool-button-secondary:hover {
	background-color: color-mix(
		in srgb,
		var(--c15t-dev-tools-secondary) 80%,
		transparent
	);
}

.c15t-devtool-button-ghost:hover {
	background-color: var(--c15t-dev-tools-accent);
	color: var(--c15t-dev-tools-accent-foreground);
}

.c15t-devtool-button-link {
	color: var(--c15t-dev-tools-primary);
	text-underline-offset: 4px;
}

.c15t-devtool-button-link:hover {
	text-decoration: underline;
}

/* Sizes */
.c15t-devtool-button-size-default {
	height: 2.5rem;
	padding: 0.5rem 1rem;
}

.c15t-devtool-button-size-sm {
	height: 2.25rem;
	padding: 0 0.75rem;
	border-radius: 0.375rem;
}

.c15t-devtool-button-size-lg {
	height: 2.75rem;
	padding: 0 2rem;
	border-radius: 0.375rem;
}

.c15t-devtool-button-size-icon {
	height: 2.5rem;
	width: 2.5rem;
}
